// src/index.js
import CflowEditorLoader from './CflowEditorLoader.vue';
import FlowPview from './FlowPview.vue';
import './index.css' // 或您的样式文件路径

// 创建组件映射，确保使用声明的变量名作为组件名
const components = {
  CflowEditorLoader,
  FlowPview
};

// 遍历组件添加install方法
Object.entries(components).forEach(([componentName, component]) => {
  component.install = (app) => {
    // 使用映射表中的键作为组件名（即声明时的变量名）
    app.component(componentName, component);
  };
});

// 1. 导出所有组件（支持按需引入）
export {
  CflowEditorLoader,
  FlowPview
};

// 2. 导出默认对象，支持整体引入
export default {
  install(app) {
    Object.values(components).forEach(component => {
      app.use(component);
    });
  }
};

// 3. 兼容 Vue 2 全局环境
if (typeof window !== 'undefined' && window.Vue) {
  Object.values(components).forEach(component => {
    window.Vue.use(component);
  });
}
